A data center may be designed to meet at least two objectives. First, the data center may be configured to satisfy demand for its services in a satisfactory manner. Second, the data center may be configured to reduce energy costs. These goals can present competing objectives. For example, from the end-user's perspective, it may be beneficial to operate an overly-conservative number of computing machines in a ready state to satisfy demand. This approach, however, may waste power if some of these machines remain powered up, yet idle.
One solution is to monitor demand at each time step and power up a suitable number of machines to service that prevailing demand. However, this solution is not fully satisfactory. It takes a certain amount of time to bring a computing machine into service, and a certain amount of time to turn such a machine off. Hence, this approach may fail to satisfy demand (and energy cost) objectives in a timely manner, as the data center is placed in a perpetual position of playing “catch up.”
Other environments (besides data centers) may present similar control-related challenges.